1. Field
Example embodiments of the following description relate to management of an application program in a system configured with a plurality of cores, and more particularly, to a technical aspect that an application program registers and transfers, to a runtime manager (RTM), a morphing instance and performance information of the application program, and the RTM optimizes an operation of the application program using measured system information and information of the application program.
2. Description of the Related Art
One of the most noticeable trends in the design of microprocessors may be the utilization of multi-core processors. Since the advent of dual-core products, a movement toward the use of multi-core processors has become more prevalent, with the development of many-core processors, which utilize a large number of core processors, arising.
Historically, multi-core architecture came about as the chip density of processors has increased. For example, the number of on-chip processing resources has increased based on Moore's law.
Conventional multi-core chips can include about 10 cores, however it is expected that hundreds of cores can be included in a single chip in the near future. As the use of multi-core architecture is becoming more common, parallel processing is being increasingly performed in personal computers (PCs), as well as in super computers, including clusters, and even in embedded systems.
Similar to cluster computing, a plurality of applications need to share computing resources in multiple cores, and there are various computing resource requirements of an application program operating in multiple cores. Additionally, in a dynamic environment, idle resources of a system are frequently changed, and requirements of the application program are also changed during execution of the application program. Traditional static parallelism of the application program tends not to achieve good performance in the dynamic environment.